#include<string>
constexpr auto BYTES_PER_SECTOR = 512;
constexpr auto PARTITION_ENCRYPTED_DATA_SECTOR = 36;
constexpr auto DEVICE_TAG_DATA_SECTOR = 35;

class UsbIO
{
private:
    std::string usbPath;
public:
    UsbIO(std::string usbPath);
    bool ReadPhysicalSector(long long  sector_start, unsigned long byte_counts,
     unsigned char* output_buffer, unsigned long buffer_size);
    bool WritePhysicalSector(long long sector_start, unsigned long byte_counts,
     unsigned char* input_buffer, unsigned long offset);
    std::string ConvertHex(unsigned char *md,int nLen);

};
